1. Field of the Invention
The present invention relates generally to an improved data processing system. More specifically, the present invention is directed to a computer implemented method, system, and computer usable program code for automatically creating projects in a rational application developer workspace.
2. Description of the Related Art
In a typical software development environment, source code is stored in a source code control repository. This source code control repository may, for example, be a configuration management version control (CMVC) or a concurrent versioning system (CVS). CMVC and CVS keep track of all work and all changes in a set of files, typically in the implementation of a software project, and allow developers to collaborate.
Developers use integrated development environment (IDE) tools, such as Rational Application Developer (RAD), formerly known as WebSphere® Studio Application Developer (WSAD), to modify source code during application development cycles. RAD is an IDE software application that provides comprehensive facilities for Java™-based application development. A developer may use RAD to visually design, construct, test, and deploy, for example, Web services, portals, and Java 2 Enterprise Edition (J2EE®) applications.
In general, a developer extracts source code from the source code control repository, such as the CMVC or CVS, creates projects in a RAD workspace, imports source code, and resolves all dependent projects and libraries. However, for various reasons during the application development cycle, a developer may often need to clean up the RAD workspace and recreate projects. As a result, the entire application development process may become very tedious, time consuming, and error prone. In addition, each developer in a team of developers working on the same software product may be required to duplicate the same application development process steps, which wastes valuable time.
A current solution to these problems is a partially automatic process known as another neat tool (ANT). ANT is an Apache Software Foundation project and is open source software. Apache ANT is a software tool for building and packaging applications based on Java™. ANT uses extensible markup language (XML) to describe the build process and its dependencies. By default, an XML build file is named build.xml. A build file contains a project, which defines one or more targets. A target is a set of tasks. An ANT task is a piece of code, or a command, that may be executed to compile and package the Java™-based applications.
A developer writes ANT build files and imports them into an application developer “tool” project. Basically, the tool project contains all of the required ANT macros to create other projects and their depended projects in the RAD workspace. Using this current solution, a developer has to create the tool project in the RAD workspace first. Then, the developer may create other projects by running the build targets in the build files using the ANT macros in the tool project.
However, this current solution has drawbacks. One drawback is that when creating a new workspace, a developer has to first create the tool project to import all the ANT build files. Another drawback is that the ANT macros defined in the ANT build files may become complicated and difficult to maintain. A third drawback is that RAD workspace must always be running when creating the projects. A fourth drawback is that the CMVC or CVS build and the project imports may not be seamlessly combined into one build.xml file.
Therefore, it would be beneficial to have a computer implemented method, system, and computer usable program code for automatically creating Java™-based projects in a RAD workspace by building a bridge between the source code control repository (i.e., a CMVC or CVS) and the RAD workspace.